home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / lib / pmake / RCS / biglibtop.mk,v < prev    next >
Encoding:
Text File  |  1990-11-02  |  17.7 KB  |  946 lines

  1. head     1.26;
  2. branch   ;
  3. access   ;
  4. symbols  ;
  5. locks    ; strict;
  6. comment  @@;
  7.  
  8.  
  9. 1.26
  10. date     90.11.02.08.43.08;  author mendel;  state Exp;
  11. branches ;
  12. next     1.25;
  13.  
  14. 1.25
  15. date     90.03.14.13.46.45;  author rab;  state Exp;
  16. branches ;
  17. next     1.24;
  18.  
  19. 1.24
  20. date     90.03.01.16.45.12;  author ouster;  state Exp;
  21. branches ;
  22. next     1.23;
  23.  
  24. 1.23
  25. date     90.02.27.17.43.03;  author douglis;  state Exp;
  26. branches ;
  27. next     1.22;
  28.  
  29. 1.22
  30. date     90.02.20.11.50.15;  author douglis;  state Exp;
  31. branches ;
  32. next     1.21;
  33.  
  34. 1.21
  35. date     90.02.13.22.55.19;  author rab;  state Exp;
  36. branches ;
  37. next     1.20;
  38.  
  39. 1.20
  40. date     89.10.09.16.59.18;  author tve;  state Exp;
  41. branches ;
  42. next     1.19;
  43.  
  44. 1.19
  45. date     89.10.09.06.55.52;  author rab;  state Exp;
  46. branches ;
  47. next     1.18;
  48.  
  49. 1.18
  50. date     89.10.02.10.05.40;  author rab;  state Exp;
  51. branches ;
  52. next     1.17;
  53.  
  54. 1.17
  55. date     89.09.27.12.32.05;  author douglis;  state Exp;
  56. branches ;
  57. next     1.16;
  58.  
  59. 1.16
  60. date     89.07.21.18.29.50;  author douglis;  state Exp;
  61. branches ;
  62. next     1.15;
  63.  
  64. 1.15
  65. date     89.06.16.09.25.43;  author ouster;  state Exp;
  66. branches ;
  67. next     1.14;
  68.  
  69. 1.14
  70. date     89.04.03.22.23.36;  author douglis;  state Exp;
  71. branches ;
  72. next     1.13;
  73.  
  74. 1.13
  75. date     89.03.15.11.26.59;  author douglis;  state Exp;
  76. branches ;
  77. next     1.12;
  78.  
  79. 1.12
  80. date     88.12.31.14.47.45;  author ouster;  state Exp;
  81. branches ;
  82. next     1.11;
  83.  
  84. 1.11
  85. date     88.11.23.17.28.17;  author ouster;  state Exp;
  86. branches ;
  87. next     1.10;
  88.  
  89. 1.10
  90. date     88.11.23.09.52.10;  author ouster;  state Exp;
  91. branches ;
  92. next     1.9;
  93.  
  94. 1.9
  95. date     88.11.08.11.17.38;  author douglis;  state Exp;
  96. branches ;
  97. next     1.8;
  98.  
  99. 1.8
  100. date     88.10.02.17.15.03;  author ouster;  state Exp;
  101. branches ;
  102. next     1.7;
  103.  
  104. 1.7
  105. date     88.09.19.08.31.54;  author ouster;  state Exp;
  106. branches ;
  107. next     1.6;
  108.  
  109. 1.6
  110. date     88.09.15.10.23.27;  author douglis;  state Exp;
  111. branches ;
  112. next     1.5;
  113.  
  114. 1.5
  115. date     88.08.31.17.15.24;  author ouster;  state Exp;
  116. branches ;
  117. next     1.4;
  118.  
  119. 1.4
  120. date     88.08.31.16.54.39;  author ouster;  state Exp;
  121. branches ;
  122. next     1.3;
  123.  
  124. 1.3
  125. date     88.08.29.15.02.19;  author ouster;  state Exp;
  126. branches ;
  127. next     1.2;
  128.  
  129. 1.2
  130. date     88.08.26.15.07.34;  author douglis;  state Exp;
  131. branches ;
  132. next     1.1;
  133.  
  134. 1.1
  135. date     88.08.26.15.05.00;  author douglis;  state Exp;
  136. branches ;
  137. next     ;
  138.  
  139.  
  140. desc
  141. @system makefile for the top of a directory containing library directories,
  142. such as lib/c.
  143. @
  144.  
  145.  
  146. 1.26
  147. log
  148. @Changed R3 stuff to R4 stuff.
  149. @
  150. text
  151. @#
  152. # This is a library Makefile that is included by the Makefiles for
  153. # the top-level directories of multi-directory libraries ("biglib"s).
  154. # For most targets, this file just passes the targets on to each of
  155. # the subdirectories.  The file that includes this one should already
  156. # have defined the following variables:
  157. #    INSTALLDIR    generic place to install archive (we'll add a .md
  158. #            subdirectory specifier here)
  159. #    LINTDIR        place to install lint library (we'll add a .mach
  160. #            extension here)
  161. #    NAME        base name of library (e.g. tcl, sx, c, etc.)
  162. #    SUBDIRS        subdirectories that contain "interesting" things
  163. #            (e.g., individual commands, modules of the kernel,
  164. #            of sub-portions of a large library).
  165. #    TM        target machine type for object files etc.
  166. #    TYPE        a keyword identifying which sort of command this
  167. #            is;  used to determine where to install, etc.
  168. #
  169. # A bunch of variables are passed on to lower-level makes, if they are
  170. # defined;  see the definitions immediately below for a complete list.
  171. #    
  172. # $Header: /sprite/lib/pmake/RCS/biglibtop.mk,v 1.25 90/03/14 13:46:45 rab Exp $
  173. #
  174.  
  175. #
  176. # Set up search paths.
  177. #
  178. .PATH.a        : # Clear out;  otherwise Pmake uses the installed libraries
  179.           # where it should be using uninstalled ones.
  180.  
  181. #
  182. # System programs -- assign conditionally so they may be redefined in
  183. # including makefile
  184. #
  185. BINDIR        ?= /sprite/cmds.$(MACHINE)
  186.  
  187. CAT        ?= $(BINDIR)/cat
  188. CP        ?= $(BINDIR)/cp
  189. MV        ?= $(BINDIR)/mv
  190. RANLIB        ?= $(BINDIR)/ranlib
  191. RM        ?= $(BINDIR)/rm
  192. TEST            ?= $(BINDIR)/test
  193. UPDATE        ?= $(BINDIR)/update
  194.  
  195. #
  196. # Several variables (such as where to install) are set based on the
  197. # TYPE variable.  Of course, any of these variables can be overridden
  198. # by explicit assignments.
  199. #
  200. TYPE        ?= unknown
  201. #if !empty(TYPE:Msprite)
  202. INSTALLDIR    ?= /sprite/lib
  203. INSTALLMAN    ?= /sprite/man/lib/$(NAME)
  204. LINTDIR        ?= /sprite/lib/lint
  205. #elif !empty(TYPE:Mx)
  206. INSTALLDIR    ?= /X/lib
  207. INSTALLMAN    ?= /X/man/lib/$(NAME)
  208. LINTDIR        ?= /X/lib/lint
  209. #elif !empty(TYPE:MX11R4)
  210. INSTALLDIR    ?= /X11/R4/lib
  211. INSTALLMAN    ?= /X11/R4/man/lib/$(NAME)
  212. LINTDIR        ?= /X11/R4/lib/lint
  213. #else
  214. INSTALLDIR    ?=
  215. INSTALLMAN    ?=
  216. LINTDIR        ?=
  217. #endif
  218.  
  219. #
  220. # Figure out what stuff we'll pass to sub-makes.
  221. #
  222. PASSVARS    =
  223. #if        defined(CC) && empty(CC:Mcc)
  224. PASSVARS    += 'CC=$(CC)'
  225. #endif
  226. #ifdef        XCFLAGS
  227. PASSVARS    += 'XCFLAGS=$(XCFLAGS)'
  228. #endif
  229. #ifdef        XAFLAGS
  230. PASSVARS    += 'XAFLAGS=$(XAFLAGS)'
  231. #endif
  232. #ifdef        INCLUDEDIR
  233. PASSVARS    += 'INCLUDEDIR=$(INCLUDEDIR)'
  234. #endif
  235. #ifdef        INSTALLDIR
  236. PASSVARS    += 'INSTALLDIR=$(INSTALLDIR)'
  237. #endif
  238. #ifdef        NOBACKUP
  239. PASSVARS    += 'NOBACKUP=$(NOBACKUP)'
  240. #endif
  241. #ifdef        BACKUPAGE
  242. PASSVARS    += 'BACKUPAGE=$(BACKUPAGE)'
  243. #endif
  244. #ifdef        TM
  245. PASSVARS    += 'TM=$(TM)'
  246. #endif
  247.  
  248. #
  249. # The following include is so that RANLIB can get re-set depending
  250. # on the machine type.
  251. #
  252. #include    <tm.mk>
  253. INSTALLFLAGS    ?=
  254. INSTALLMANFLAGS    ?=
  255.  
  256. # MAKESUBDIRS usage:
  257. #    <target> : MAKESUBDIRS
  258. #
  259. # This .USE target will simply pass <target> onto each subdirectory
  260. # in a separate make.If the TM variable is defined, then only pass
  261. # the target on to subdirectories whose Makefiles include the given
  262. # TM among their MACHINES.
  263. #
  264. MAKESUBDIRS    : .USE .MAKE .EXEC .SILENT .NOEXPORT
  265.     for i in $(SUBDIRS);
  266.     do
  267. #ifdef TM
  268.         if grep '^MACHINES' $i/Makefile | grep -s $(TM); then
  269.             true;
  270.         else continue;
  271.         fi
  272. #endif TM
  273.         echo %%% ${i} %%%
  274.         (cd $i; $(MAKE) $(PASSVARS) $(.TARGET))
  275.     done
  276.  
  277. #
  278. # MAKEINSTALLLIB usage:
  279. #    <target> : <source> MAKEINSTALLLIB
  280. # Will copy over a library and re-ranlib it.
  281. #
  282. MAKEINSTALLLIB : .USE
  283.     $(RM) -f $(.TARGET).old $(.TARGET).new~
  284.     $(CP) $(.ALLSRC) $(.TARGET).new~
  285.     $(RANLIB) $(.TARGET).new~
  286.     - $(MV) $(.TARGET) $(.TARGET).old
  287.     $(MV) $(.TARGET).new~ $(.TARGET)
  288.  
  289. REGLIB            = $(TM).md/lib$(NAME).a
  290. PROFLIB            = $(TM).md/lib$(NAME)_p.a
  291. DEBUGLIB        = $(TM).md/lib$(NAME)_g.a
  292. LINTLIB            = $(TM).md/llib-l$(NAME).ln
  293. INSTLIB            = $(INSTALLDIR)/$(REGLIB)
  294. INSTPROFILE        = $(INSTALLDIR)/$(PROFLIB)
  295. INSTDEBUG        = $(INSTALLDIR)/$(DEBUGLIB)
  296. LINTLIB            = $(TM).md/llib-l$(NAME).ln
  297. INSTLINT        = $(LINTDIR).$(TM)/llib-l$(NAME).ln
  298.  
  299. #ifndef no_targets
  300. #
  301. # We should define the main targets.  See the Mkmf man page for details.
  302. #
  303.  
  304. default        : $(REGLIB)
  305.  
  306. #
  307. # Here as with MAKESUBDIRS, if an explicit TM is given then only
  308. # re-make in the subdirectories that support that target machine.
  309. #
  310. $(REGLIB)    : $(SUBDIRS)    
  311. $(SUBDIRS)    :: .MAKE .EXEC .SILENT .NOEXPORT
  312. #ifdef TM
  313.     if grep '^MACHINES' $(.TARGET)/Makefile | grep -s $(TM); then
  314.         cd $(.TARGET); $(MAKE) $(PASSVARS)
  315.     else true;
  316.     fi
  317. #else
  318.     cd $(.TARGET); $(MAKE) $(PASSVARS)
  319. #endif
  320.  
  321. $(PROFLIB)    : profile
  322. $(DEBUGLIB)    : debug
  323.  
  324. clean tidy        :: .MAKE .SILENT
  325.     echo "rm -f $(REGLIB) $(PROFLIB) $(DEBUGLIB)"
  326.     rm -f $(REGLIB) $(PROFLIB) $(DEBUGLIB)
  327.     for i in $(SUBDIRS);
  328.     do
  329. #ifdef TM
  330.         if grep '^MACHINES' $i/Makefile | grep -s $(TM); then
  331.             true;
  332.         else continue;
  333.         fi
  334. #endif TM
  335.         echo %%% ${i} %%%
  336.         (cd $i; $(MAKE) $(PASSVARS) clean)
  337.     done
  338.  
  339. #if empty(TYPE:Munknown)
  340. #
  341. # The install target is handled specially, in order to avoid multiple
  342. # passes through the subdirectories for compiling, generating lint
  343. # libraries, installing headers, and so on.
  344. #
  345. install            :: .MAKE .EXEC .NOEXPORT
  346.     $(RM) -f $(TM).md/llib-l$(NAME).ln
  347.     for i in $(SUBDIRS);
  348.     do
  349. #ifdef TM
  350.         if grep '^MACHINES' $i/Makefile | grep -s $(TM); then
  351.             true;
  352.         else continue;
  353.         fi
  354. #endif TM
  355.         echo %%% ${i} %%%
  356.         (cd $i; $(MAKE) $(PASSVARS) install)
  357.         $(CAT) ${i}/$(TM).md/llib-l${i}.ln >> $(LINTLIB)
  358.     done
  359.     $(RM) -f $(INSTLIB).old $(INSTLIB).new~
  360.     $(CP) $(REGLIB) $(INSTLIB).new~
  361.     $(RANLIB) $(INSTLIB).new~
  362.     - $(MV) $(INSTLIB) $(INSTLIB).old
  363.     $(MV) $(INSTLIB).new~ $(INSTLIB)
  364.     $(UPDATE) -m 664 $(INSTALLFLAGS) $(LINTLIB) $(INSTLINT)
  365.  
  366. #
  367. # Rebuild is like install, but it nukes the library first and starts
  368. # from scratch, telling the subdirs to append and not to ranlib.
  369. #
  370. rebuild            :: .MAKE .EXEC .NOEXPORT
  371.     $(RM) -f $(REGLIB)
  372.     for i in $(SUBDIRS);
  373.     do
  374. #ifdef TM
  375.         if grep '^MACHINES' $i/Makefile | grep -s $(TM); then
  376.             true;
  377.         else continue;
  378.         fi
  379. #endif TM
  380.         echo %%% ${i} %%%
  381.         (cd $i; $(MAKE) $(PASSVARS) rebuild)
  382.     done
  383.     ranlib $(REGLIB)
  384.  
  385. $(INSTLIB)        : $(REGLIB) MAKEINSTALLLIB
  386. installdebug        :: $(DEBUGLIB) debuglink
  387. debuglink        !
  388.     rm -f $(INSTDEBUG)
  389.     ln -s `pwd`/$(DEBUGLIB) $(INSTDEBUG)
  390. installlint        :: $(INSTLINT)
  391. $(INSTLINT)        :: $(LINTLIB) .SILENT
  392.     $(UPDATE) -m 664 $(INSTALLFLAGS) $(LINTLIB) $(INSTLINT)
  393. installman        :: .SILENT
  394. #if !empty(MANPAGES)
  395.     $(UPDATE) -m 444 -l $(INSTALLMANFLAGS) $(MANPAGES) $(INSTALLMAN)
  396. #endif
  397. installprofile        :: $(INSTPROFILE)
  398. $(INSTPROFILE)        : $(PROFLIB) MAKEINSTALLLIB
  399.  
  400. #
  401. # The following target does a quick install without cycling through to
  402. # recompile in each of the subdirectories.  Can't use the MAKEINSTALLLIB
  403. # macro for this, unfortunately.
  404. #
  405. installquick        ::
  406.     $(RM) -f $(INSTLIB).old $(INSTLIB).new~
  407.     $(CP) $(REGLIB) $(INSTLIB).new~
  408.     $(RANLIB) $(INSTLIB).new~
  409.     - $(MV) $(INSTLIB) $(INSTLIB).old
  410.     $(MV) $(INSTLIB).new~ $(INSTLIB)
  411.  
  412. #else
  413. #
  414. # The targets below are used if there's no known place to install this
  415. # library:  just output a warning message.
  416. #
  417. install installdebug installlint installman installprofile \
  418. installquick        :: .SILENT
  419.     echo "Can't install library $(NAME): no install directory defined"
  420. #endif
  421.  
  422.  
  423. lintlib            : $(LINTLIB)
  424. $(LINTLIB)        : .MAKE .EXEC .SILENT
  425.     $(RM) -f $(TM).md/llib-l$(NAME).ln
  426.     for i in $(SUBDIRS);
  427.     do
  428. #ifdef TM
  429.         if grep '^MACHINES' $i/Makefile | grep -s $(TM); then
  430.             true;
  431.         else continue;
  432.         fi
  433. #endif TM
  434.         echo %%% ${i} %%%
  435.         (cd $i; $(MAKE) $(PASSVARS) lintlib)
  436.         $(CAT) ${i}/$(TM).md/llib-l${i}.ln >> $(LINTLIB)
  437.     done
  438.  
  439. mkmf            ::
  440.     mkmf
  441.  
  442. newtm            ! .MAKE .SILENT
  443.     if $(TEST) -d $(TM).md; then
  444.         true
  445.     else
  446.         mkdir $(TM).md;
  447.         chmod 775 $(TM).md;
  448.         mkmf -m$(TM)
  449.     fi
  450.     for i in $(SUBDIRS);
  451.     do
  452.         echo %%% ${i} %%%
  453.         (cd $i; $(MAKE) $(PASSVARS) newtm)
  454.     done
  455.  
  456. rcsinfo            : .MAKE .SILENT
  457.     for i in $(SUBDIRS);
  458.     do
  459.         echo %%% ${i} %%%
  460.         (cd $i; rcsinfo)
  461.     done
  462.  
  463. debug depend installdebug         :: MAKESUBDIRS
  464. installhdrs installman installprofile    :: MAKESUBDIRS
  465. lint mkmf profile rdist            :: MAKESUBDIRS
  466.  
  467. dist: subdirs_d
  468. #if defined(DISTDIR) && !empty(DISTDIR)
  469.     if $(TEST) -e $(DISTDIR)/$(TM).md ;then
  470.         echo ""
  471.     else
  472.         mkdir $(DISTDIR)/$(TM).md
  473.     fi
  474.     for i in Makefile local.mk
  475.     do
  476.     if $(TEST) -e $${i}; then
  477.         $(UPDATE)  $${i} $(DISTDIR)/$${i} ;else true; fi
  478.     done
  479. #endif
  480.  
  481. subdirs_d:
  482. #if defined(DISTDIR) && !empty(DISTDIR)
  483.     for i in $(SUBDIRS)
  484.     do
  485.         echo %%% $${i} %%%
  486. #ifdef TM
  487.         ( cd $${i}; $(MAKE) dist 'DISTDIR=$(DISTDIR)'/$${i} 'TM=$(TM)' )
  488. #else
  489.         ( cd $${i}; $(MAKE) dist 'DISTDIR=$(DISTDIR)'/$${i} )
  490. #endif
  491.     done
  492. #if !empty(MANPAGES)
  493.     $(UPDATE)  $(MANPAGES) $(DISTDIR)/$(MANPAGES)
  494. #endif
  495. #else
  496.     @@echo "Sorry, no distribution directory defined."
  497. #endif
  498.  
  499. #include <all.mk>
  500.  
  501. #endif no_targets
  502.  
  503. .MAKEFLAGS    : -C        # No compatibility needed
  504. @
  505.  
  506.  
  507. 1.25
  508. log
  509. @Some of the files in gnulib must be compiled with gcc, even on the
  510. ds3100, so I changed biglibtop.mk so that it doesn't pass CC to
  511. sub-makes unless CC is something other than cc.
  512. @
  513. text
  514. @d22 1
  515. a22 1
  516. # $Header: /sprite/lib/pmake/RCS/biglibtop.mk,v 1.24 90/03/01 16:45:12 ouster Exp Locker: rab $
  517. d59 4
  518. a62 4
  519. #elif !empty(TYPE:MX11R3)
  520. INSTALLDIR    ?= /mic/X11R3/lib
  521. INSTALLMAN    ?= /mic/X11R3/man/lib/$(NAME)
  522. LINTDIR        ?= /mic/X11R3/lib/lint
  523. @
  524.  
  525.  
  526. 1.24
  527. log
  528. @Changed debuggable versions of libraries to be symbolic links
  529. to source areas.
  530. @
  531. text
  532. @d22 1
  533. a22 1
  534. # $Header: /sprite/lib/pmake/RCS/biglibtop.mk,v 1.23 90/02/27 17:43:03 douglis Exp $
  535. d73 1
  536. a73 1
  537. #ifdef        CC
  538. @
  539.  
  540.  
  541. 1.23
  542. log
  543. @added support for backup age flag BACKUPAGE
  544. @
  545. text
  546. @d22 1
  547. a22 1
  548. # $Header: /sprite/lib/pmake/RCS/biglibtop.mk,v 1.22 90/02/20 11:50:15 douglis Exp Locker: douglis $
  549. d236 4
  550. a239 2
  551. installdebug        :: $(INSTDEBUG)
  552. $(INSTDEBUG)        : $(DEBUGLIB) MAKEINSTALLLIB
  553. @
  554.  
  555.  
  556. 1.22
  557. log
  558. @tried to add some consistency to ::/: operators, and fixed tve's TYPE==personal complaint
  559. @
  560. text
  561. @d22 1
  562. a22 1
  563. # $Header: /sprite/lib/pmake/RCS/biglibtop.mk,v 1.21 90/02/13 22:55:19 rab Exp Locker: douglis $
  564. d90 3
  565. @
  566.  
  567.  
  568. 1.21
  569. log
  570. @Make md subdirs for distribution.
  571. @
  572. text
  573. @d22 1
  574. a22 1
  575. # $Header: /sprite/lib/pmake/RCS/biglibtop.mk,v 1.20 89/10/09 16:59:18 tve Exp Locker: rab $
  576. d250 1
  577. a250 1
  578. installquick        :
  579. @
  580.  
  581.  
  582. 1.20
  583. log
  584. @Added INSTALLMAN, INSTALLDIR for TYPE=X11R3
  585. @
  586. text
  587. @d22 1
  588. a22 1
  589. # $Header: /sprite/lib/pmake/RCS/biglibtop.mk,v 1.19 89/10/09 06:55:52 rab Exp Locker: tve $
  590. d314 5
  591. @
  592.  
  593.  
  594. 1.19
  595. log
  596. @Fixed distribution stuff.
  597. @
  598. text
  599. @d22 1
  600. a22 1
  601. # $Header: /sprite/lib/pmake/RCS/biglibtop.mk,v 1.18 89/10/02 10:05:40 rab Exp Locker: rab $
  602. d59 4
  603. @
  604.  
  605.  
  606. 1.18
  607. log
  608. @Added Distribution stuff.
  609. @
  610. text
  611. @d22 1
  612. a22 1
  613. # $Header: /sprite/lib/pmake/RCS/biglibtop.mk,v 1.17 89/09/27 12:32:05 douglis Exp Locker: rab $
  614. d42 1
  615. d284 1
  616. a284 1
  617.     if test -d $(TM).md; then
  618. d312 2
  619. a313 1
  620.     if test -e $${i}; then $(UPDATE)  $${i} $(DISTDIR)/$${i} ;fi
  621. @
  622.  
  623.  
  624. 1.17
  625. log
  626. @added rebuild target
  627. @
  628. text
  629. @d22 1
  630. a22 1
  631. # $Header: /sprite/lib/pmake/RCS/biglibtop.mk,v 1.16 89/07/21 18:29:50 douglis Exp Locker: douglis $
  632. d306 26
  633. @
  634.  
  635.  
  636. 1.16
  637. log
  638. @changed newtm to do mkmf for only the new machine type
  639. @
  640. text
  641. @d22 1
  642. a22 1
  643. # $Header: /sprite/lib/pmake/RCS/biglibtop.mk,v 1.15 89/06/16 09:25:43 ouster Exp Locker: douglis $
  644. d207 19
  645. @
  646.  
  647.  
  648. 1.15
  649. log
  650. @Install lint during "install", and echo all commands.
  651. @
  652. text
  653. @d22 1
  654. a22 1
  655. # $Header: /sprite/lib/pmake/RCS/biglibtop.mk,v 1.14 89/04/03 22:23:36 douglis Exp $
  656. d269 1
  657. a269 1
  658.         mkmf
  659. @
  660.  
  661.  
  662. 1.14
  663. log
  664. @added 'tidy' target.
  665. @
  666. text
  667. @d22 1
  668. a22 1
  669. # $Header: /sprite/lib/pmake/RCS/biglibtop.mk,v 1.13 89/03/15 11:26:59 douglis Exp Locker: douglis $
  670. d187 1
  671. a187 1
  672. install            :: .MAKE .EXEC .SILENT .NOEXPORT
  673. d206 1
  674. @
  675.  
  676.  
  677. 1.13
  678. log
  679. @don't export SUBDIRS -- do pmake within each subdir but
  680. do sequential make across the top level, or get exponential growth.
  681. @
  682. text
  683. @d22 1
  684. a22 1
  685. # $Header: /sprite/lib/pmake/RCS/biglibtop.mk,v 1.12 88/12/31 14:47:45 ouster Exp Locker: douglis $
  686. d166 1
  687. a166 1
  688. clean            :: .MAKE .SILENT
  689. @
  690.  
  691.  
  692. 1.12
  693. log
  694. @Use TYPE variable to decide on things like INSTALLDIR, INCLUDEDIR, etc.
  695. @
  696. text
  697. @d22 1
  698. a22 1
  699. # $Header: /sprite/lib/pmake/RCS/biglibtop.mk,v 1.11 88/11/23 17:28:17 ouster Exp Locker: ouster $
  700. d153 1
  701. a153 1
  702. $(SUBDIRS)    :: .MAKE .EXEC .SILENT
  703. @
  704.  
  705.  
  706. 1.11
  707. log
  708. @Revisions to make "make newtm" work.
  709. @
  710. text
  711. @d16 2
  712. d22 1
  713. a22 1
  714. # $Header: /sprite/lib/pmake/RCS/biglibtop.mk,v 1.10 88/11/23 09:52:10 ouster Exp Locker: ouster $
  715. d45 20
  716. d96 1
  717. d181 26
  718. a206 1
  719. install            :: $(INSTLIB) installlint installhdrs
  720. d208 2
  721. d213 4
  722. a216 2
  723. installdebug        :: $(INSTDEBUG)
  724. $(INSTDEBUG)        : $(DEBUGLIB) MAKEINSTALLLIB
  725. d232 11
  726. d283 3
  727. a285 3
  728. debug depend installhdrs         :: MAKESUBDIRS
  729. installdebug installprofile        :: MAKESUBDIRS
  730. lint profile rdist            :: MAKESUBDIRS
  731. @
  732.  
  733.  
  734. 1.10
  735. log
  736. @Major changes to finalize the new C library (move include.new to
  737. include, etc.).
  738. @
  739. text
  740. @d20 1
  741. a20 1
  742. # $Header: /sprite/lib/pmake/RCS/biglibtop.mk,v 1.9 88/11/08 11:17:38 douglis Exp Locker: ouster $
  743. d199 14
  744. a212 3
  745. newtm            :: .IGNORE
  746.     mkdir $(TM).md
  747.     mkmf
  748. d222 1
  749. a222 1
  750. lint newtm profile rdist        :: MAKESUBDIRS
  751. @
  752.  
  753.  
  754. 1.9
  755. log
  756. @don't export the "for i in $(SUBDIRS) loop.
  757. @
  758. text
  759. @a8 1
  760. #    LIBRARY        base name of library (e.g. tcl, sx, c, etc.)
  761. d11 1
  762. d20 1
  763. a20 1
  764. # $Header: /sprite/lib/pmake/RCS/biglibtop.mk,v 1.8 88/10/02 17:15:03 ouster Exp Locker: douglis $
  765. d26 2
  766. a27 1
  767. .PATH.a        : # Clear out
  768. d72 1
  769. a72 1
  770. #include    <tmflags.mk>
  771. d79 5
  772. a83 2
  773. # in a separate make.
  774. MAKESUBDIRS    : .USE .MAKE .SILENT .NOEXPORT
  775. d86 6
  776. d108 4
  777. a111 4
  778. REGLIB            = $(TM).md/lib$(LIBRARY).a
  779. PROFLIB            = $(TM).md/lib$(LIBRARY)_p.a
  780. DEBUGLIB        = $(TM).md/lib$(LIBRARY)_g.a
  781. LINTLIB            = $(TM).md/llib-l$(LIBRARY).ln
  782. d115 2
  783. a116 2
  784. LINTLIB            = $(TM).md/llib-l$(LIBRARY).ln
  785. INSTLINT        = $(LINTDIR).$(TM)/llib-l$(LIBRARY).ln
  786. d123 14
  787. a136 2
  788. default        : $(SUBDIRS)
  789. $(SUBDIRS)    ::
  790. d138 1
  791. a139 1
  792. $(REGLIB)    : default
  793. d143 16
  794. a158 1
  795. install            :: $(INSTLIB)
  796. d160 5
  797. a166 2
  798. installdebug        :: $(INSTDEBUG)
  799. $(INSTDEBUG)        : $(DEBUGLIB) MAKEINSTALLLIB
  800. d180 3
  801. a182 2
  802. $(LINTLIB)        : .MAKE .SILENT
  803.     $(RM) -f $(TM).md/llib-l$(LIBRARY).ln
  804. d185 6
  805. d196 2
  806. a197 1
  807. lintlib            : $(LINTLIB)
  808. d199 3
  809. a201 18
  810. installlint        :: $(INSTLINT)
  811. $(INSTLINT)        :: $(LINTLIB)
  812.     @@$(UPDATE) -m 664 $(INSTALLFLAGS) $(LINTLIB) $(INSTLINT)
  813.  
  814. mkmf            : .MAKE .SILENT
  815.     for i in $(SUBDIRS);
  816.     do
  817.         echo %%% ${i} %%%
  818.         (cd $i; mkmf)
  819.     done
  820.  
  821. newtarget        : .MAKE .SILENT
  822.     for i in $(SUBDIRS);
  823.     do
  824.         echo %%% ${i} %%%
  825.         (cd $i; mkdir $(TM).md)
  826.     done
  827.  
  828. d209 1
  829. a209 1
  830. clean debug depend install installhdrs     :: MAKESUBDIRS
  831. d211 1
  832. a211 1
  833. lint profile rdist            :: MAKESUBDIRS
  834. @
  835.  
  836.  
  837. 1.8
  838. log
  839. @Don't use .ZEROTIME attribute anymore.
  840. @
  841. text
  842. @d20 1
  843. a20 1
  844. # $Header: biglibtop.mk,v 1.7 88/09/19 08:31:54 ouster Exp $
  845. d79 1
  846. a79 1
  847. MAKESUBDIRS    : .USE .MAKE .SILENT
  848. @
  849.  
  850.  
  851. 1.7
  852. log
  853. @Don't quit during installs if there's no old library to mv.
  854. @
  855. text
  856. @d20 1
  857. a20 1
  858. # $Header: biglibtop.mk,v 1.6 88/09/15 10:23:27 douglis Exp $
  859. d140 1
  860. a140 1
  861. $(LINTLIB)        : .MAKE .SILENT .ZEROTIME
  862. @
  863.  
  864.  
  865. 1.6
  866. log
  867. @added include of all.mk
  868. @
  869. text
  870. @d20 1
  871. a20 1
  872. # $Header: biglibtop.mk,v 1.5 88/08/31 17:15:24 ouster Exp $
  873. d95 1
  874. a95 1
  875.     $(MV) $(.TARGET) $(.TARGET).old
  876. d137 1
  877. a137 1
  878.     $(MV) $(INSTLIB) $(INSTLIB).old
  879. @
  880.  
  881.  
  882. 1.5
  883. log
  884. @Last fix didn't work.  This one does.
  885. @
  886. text
  887. @d20 1
  888. a20 1
  889. # $Header: biglibtop.mk,v 1.4 88/08/31 16:54:39 ouster Exp $
  890. d179 2
  891. @
  892.  
  893.  
  894. 1.4
  895. log
  896. @Keep "installquick" from needing to check all subdirs.
  897. @
  898. text
  899. @d20 1
  900. a20 1
  901. # $Header: biglibtop.mk,v 1.3 88/08/29 15:02:19 ouster Exp $
  902. d127 12
  903. a138 1
  904. installquick        : MAKEINSTALLLIB
  905. @
  906.  
  907.  
  908. 1.3
  909. log
  910. @Connect $(DEBUGLIB) to debug, etc.
  911. @
  912. text
  913. @d20 1
  914. a20 1
  915. # $Header: biglibtop.mk,v 1.2 88/08/26 15:07:34 douglis Exp $
  916. d127 1
  917. a127 1
  918. installquick        : $(INSTLIB)
  919. @
  920.  
  921.  
  922. 1.2
  923. log
  924. @save away old library w/ .old suffix.
  925. @
  926. text
  927. @d20 1
  928. a20 1
  929. # $Header: top.mk,v 1.8 88/08/13 11:23:15 ouster Exp $
  930. d116 4
  931. @
  932.  
  933.  
  934. 1.1
  935. log
  936. @Initial revision
  937. @
  938. text
  939. @d36 1
  940. d92 5
  941. a96 3
  942.     $(RM) -f $(.TARGET)
  943.     $(CP) $(.ALLSRC) $(.TARGET)
  944.     $(RANLIB) $(.TARGET)
  945. @
  946.